From 3c690c52ba6422bfd83de5c547ee27f33738106c Mon Sep 17 00:00:00 2001 From: Alexander Larsson Date: Tue, 19 Feb 2013 21:03:35 +0100 Subject: [PATCH] Avoid loop in paint update cycle Commit 1db87c897f930171646351c99af7df09dc7ec949 accidentally removed a check for !in_paint_idle in maybe_start_idle which causes us to create a paint loop whenever something requests a phase inside the paint_idle. --- gdk/gdkframeclockidle.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gdk/gdkframeclockidle.c b/gdk/gdkframeclockidle.c index 7e1a8c17e6..59a18de064 100644 --- a/gdk/gdkframeclockidle.c +++ b/gdk/gdkframeclockidle.c @@ -247,7 +247,8 @@ maybe_start_idle (GdkFrameClockIdle *clock_idle) (GDestroyNotify) g_object_unref); } - if (priv->paint_idle_id == 0 && RUN_PAINT_IDLE (priv)) + if (!priv->in_paint_idle && + priv->paint_idle_id == 0 && RUN_PAINT_IDLE (priv)) { priv->paint_idle_id = gdk_threads_add_timeout_full (GDK_PRIORITY_REDRAW, min_interval, -- 2.30.2